package com.zqwh.yj.sdk.model;

import com.zqwh.yj.sdk.obj.VeinUser;

import java.util.List;

/**
 * Created by eason.yang on 2019/6/6.
 */

public interface VeinModel {
    int VEIN_OK = 0;
    int VEIN_DEVICE_DISCONNECTED = -1;
    int VEIN_NOT_SUPPORT = -2;
    int VEIN_OVERTIME = -3;
    int VEIN_COLLECT_FAIL = -4;
    int VEIN_ADD_CHAR_FAIL = -5;
    int VEIN_NOT_SAME_FINGER = -6;
    int VEIN_MIX_FAIL = -7;
    int VEIN_SEARCH_FAIL = -8;
    int VEIN_IN_USE = -9;
    int VEIN_PUT_FINGER_AGAIN_1 = 1;
    int VEIN_PUT_FINGER_AGAIN_2 = 2;
    int VEIN_COLLECT_FINISHED = 3;

    int  searchUsbOfVein();
    long connectVein();
    void closeVein();
    void createVeinLib(List<VeinUser> users);
    int importVeinTemp(VeinUser user);
    int removeVeinTemp(VeinUser user);
    void collectVeinTemp(VeinUser user, VeinCollectListener listener);
    void collectVeinTemp(VeinListener listener);
    String createVeinTemp(VeinUser user, String[] chara);
    void search(VeinSearchListener listener);
    void resetState();
    void addVeinUser(VeinUser user);
    void removeUserVein(String userId, int veinNo);
    long getCurrentVeinId();
}
